The present invention relates to a method of teaching a robot, and more particularly to a robot teaching method which is capable of generating or correcting teaching data while additionally taking into account the posture or orientation of an end effector of a robot with respect to the tool center point (TCP).
Teaching boxes are used to instruct robots so that the end effectors mounted on the distal ends of robot arms will subsequently be moved automatically along programmed paths. Teaching boxes have an input means for selecting command values to drive the articulations of a robot and also for selecting coordinate systems used as a reference when teaching the robot, and a setting means for presetting a speed of operation of the robot. The operator teaches a robot by operating these input and setting means according to predetermined routines or procedures.
When robots operate to coat, sea, arc-weld, or otherwise work on workpieces, the posture of the end effectors of such robots with respect to the workpieces is of great importance.
Usually, after the position of an end effector has been determined, the posture of the end effector with respect to a workpiece is corrected. If the posture of the end effector is corrected by turning the end effector about the distal end of the robot arm, then the position of the tool center point of the end effector relative to the workpiece tends to vary. Therefore, when the posture of the end effector with respect to the workpiece is corrected in the above manner, the position of the tool center point must also be corrected.
In order to make the robot teaching process more efficient, there has been proposed a robot teaching process, as disclosed in Japanese Laid-Open Patent Publication No. 59-167713, wherein the position of the tool center point of an end effector and the posture or orientation of the end effector with respect to a workpiece are stored when teaching the robot, and the robot is subsequently played back by computing the positions of the articulations of the robot based on the stored position and posture data.
According to the disclosed robot teaching process, the positional data for the robot articulations are computed in order to correct the position of a displaced tool center point by varying the posture of the end effector. Therefore, it takes a long time to position the robot, and the speed at which the robot is moved when it is played back is low.
It can readily be understood that as many teaching points as possible should be employed in order to move a robot precisely along a desired path. However, the more the teaching points through which the robot must be guided, the longer the time needed to teach the robot. One solution to this problem is to automatically compute teaching data between two teaching points through linear or circular interpolation for welding a workpiece with an arc welding robot, for example.
The conventional interpolation process only interpolates positions for the tool center point, but does not take into account the posture or orientation of the end effector with respect to the workpiece. Therefore, it cannot perform a highly accurate job in cases where the orientation of the end effector is important, such as when coating or sealing a workpiece. If the posture of the end effector is varied at each interpolated point, then the speed of operation of the robot is greatly lowered.
If a different lot of workpieces are to be processed, or the robot is dismounted from the processing line for maintenance, the position of the tool center point of the robot with respect to a workpiece may be shifted. It would be considerably time-consuming if the robot were taught all over again. It has been proposed to correct the teaching data based on the teaching data prior to the changing of workpiece lots or the maintenance of the robot (see Japanese Laid-Open Patent Publication No. 60-95605).
The proposed process however does not take into consideration the posture of an end effector with respect to a workpiece in view of requirements for high-speed data correction. Therefore, when the configuration of workpieces or the position of a robot is largely changed, the posture of the end effector with respect to the workpiece is rendered inaccurate, making it impossible to effect highly accurate robot operation. The position of the tool center point may also be shifted when end effectors are changed due to a design modification.